home *** CD-ROM | disk | FTP | other *** search
/ PC World Interactive 7 / PC World Interactive 7.iso / program / qbprog.EXE / ZAR.BAS < prev    next >
BASIC Source File  |  1995-04-25  |  6KB  |  255 lines

  1. DECLARE SUB SIL ()
  2. DECLARE SUB ALTMENU ()
  3. DECLARE SUB Z1B ()
  4. DECLARE SUB Z2B ()
  5. DECLARE SUB Z3B ()
  6. DECLARE SUB Z4B ()
  7. DECLARE SUB Z5B ()
  8. DECLARE SUB Z6B ()
  9. DECLARE SUB Z1 ()
  10. DECLARE SUB Z2 ()
  11. DECLARE SUB Z3 ()
  12. DECLARE SUB Z4 ()
  13. DECLARE SUB Z5 ()
  14. DECLARE SUB Z6 ()
  15. MUZIK$ = "o3 L8 E D+ E D+ E o2 B o3 D C L2 o2 A"
  16. CONST ESC = 27
  17. NAME1SCR = 0: NAME2SCR = 0:
  18.  
  19. CALL ALTMENU
  20.  
  21. COLOR 14: LOCATE 7, 29: INPUT "HOW MANY PLAYERS WILL PLAY = ", PL
  22. IF PL = 1 THEN GOTO 1 ELSE GOTO 1000
  23.  
  24. DO
  25. CALL SIL
  26.  
  27. 1 COLOR 14: LOCATE 7, 40: PRINT SPC(35); : LOCATE 7, 29: INPUT "GUESS THE SUM OF DICES = ", B
  28. IF B < 2 OR B > 12 THEN GOTO 1
  29.  
  30. RANDOMIZE TIMER
  31.    D1 = INT(RND * 6) + 1
  32.    D2 = INT(RND * 6) + 1
  33. XX = D1 + D1
  34. LOCATE 9, 28: COLOR 1: PRINT "1.st DICE"; D1; : COLOR 2: PRINT "   2.nd DICE"; D2: LOCATE 16, 33: COLOR 10: PRINT "SUM OF DICES IS"; D1 + D2
  35.    LOCATE 11: DRAW "BM230,145 R60D65L60U65":
  36.    DRAW "BR60BD65BR60BU65": DRAW "R60D65L60U65"
  37.    IF D1 = 1 THEN
  38.         CALL Z1
  39.    ELSEIF D1 = 2 THEN CALL Z2
  40.    ELSEIF D1 = 3 THEN CALL Z3
  41.    ELSEIF D1 = 4 THEN CALL Z4
  42.    ELSEIF D1 = 5 THEN CALL Z5
  43.    ELSEIF D1 = 6 THEN CALL Z6
  44.    END IF
  45.  
  46.    IF D2 = 1 THEN
  47.         CALL Z1B
  48.    ELSEIF D2 = 2 THEN CALL Z2B
  49.    ELSEIF D2 = 3 THEN CALL Z3B
  50.    ELSEIF D2 = 4 THEN CALL Z4B
  51.    ELSEIF D2 = 5 THEN CALL Z5B
  52.    ELSEIF D2 = 6 THEN CALL Z6B
  53.    END IF
  54.  
  55. IF B = D1 + D2 THEN LOCATE 21, 3: PRINT "CONGRATULATIONS! YOU WIN!!!": PLAY "MB X" + VARPTR$(MUZIK$): GOTO 100
  56.    LOCATE 21, 3: PRINT "SORRY! YOU LOST !"
  57. 100 LOCATE 21, 41: INPUT "DO YOU WANT TO DICE AGAIN ? (Y / N) ", Resp$
  58.    PRINT
  59. LOOP UNTIL UCASE$(MID$(Resp$, 1, 1)) = "N"
  60. END
  61. '-----------------------------------------------------------------------
  62.  
  63. 1000 'oyuncu oyuncuya karsi
  64. CALL ALTMENU
  65. COLOR 14: LOCATE 7, 3: INPUT "ENTER 1.st PLAYERS NAME = ", NAME1$
  66.           LOCATE 7, 42: INPUT "ENTER 2.nd PLAYERS NAME = ", NAME2$
  67.  
  68. DO
  69. CALL SIL
  70.  
  71. LOCATE 9, 3: PRINT "1.st Player": LOCATE 10, 3: PRINT NAME1$
  72. LOCATE 9, 67: PRINT "2.nd Player": LOCATE 10, 67: PRINT NAME2$
  73. LOCATE 11, 3: PRINT "SCORE="; NAME1SCR: LOCATE 11, 67: PRINT "SCORE="; NAME2SCR
  74.  
  75. X = X + 1
  76. SELECT CASE X
  77. CASE 1, 3, 5, 7, 9
  78.     LOCATE 5, 31: PRINT NAME1$; " is playing..."
  79. CASE 2, 4, 6, 8, 10
  80.     LOCATE 5, 31: PRINT NAME2$; " is playing..."
  81. CASE ELSE
  82.  IF NAME1SCR > NAME2SCR THEN CALL SIL: LOCATE 14, 25: PRINT NAME1$; " WIN THE DICE GAME !!!": BEEP: BEEP
  83.  IF NAME1SCR < NAME2SCR THEN CALL SIL: LOCATE 14, 25: PRINT NAME2$; " WIN THE DICE GAME !!!": BEEP: BEEP
  84.  IF NAME1SCR = NAME2SCR THEN CALL SIL: LOCATE 14, 25: PRINT " EQUAL SCORE !!!"
  85. ' END IF
  86. END
  87. END SELECT
  88.  
  89. 1001 COLOR 14: LOCATE 7, 53: PRINT SPC(26); : LOCATE 7, 29: INPUT "GUESS THE SUM OF DICES = ", B
  90. IF B < 2 OR B > 12 THEN GOTO 1001
  91.  
  92. RANDOMIZE TIMER
  93.    D1 = INT(RND * 6) + 1
  94.    D2 = INT(RND * 6) + 1
  95.    XX = D1 + D2
  96.  
  97. LOCATE 9, 28: COLOR 1: PRINT "1.st DICE"; D1; : COLOR 2: PRINT "   2.nd DICE"; D2: LOCATE 16, 33: COLOR 10: PRINT "SUM OF DICES IS"; D1 + D2
  98.    LOCATE 11: DRAW "BM230,145 R60D65L60U65":
  99.    DRAW "BR60BD65BR60BU65": DRAW "R60D65L60U65"
  100.    IF D1 = 1 THEN
  101.         CALL Z1
  102.    ELSEIF D1 = 2 THEN CALL Z2
  103.    ELSEIF D1 = 3 THEN CALL Z3
  104.    ELSEIF D1 = 4 THEN CALL Z4
  105.    ELSEIF D1 = 5 THEN CALL Z5
  106.    ELSEIF D1 = 6 THEN CALL Z6
  107.    END IF
  108.  
  109.    IF D2 = 1 THEN
  110.         CALL Z1B
  111.    ELSEIF D2 = 2 THEN CALL Z2B
  112.    ELSEIF D2 = 3 THEN CALL Z3B
  113.    ELSEIF D2 = 4 THEN CALL Z4B
  114.    ELSEIF D2 = 5 THEN CALL Z5B
  115.    ELSEIF D2 = 6 THEN CALL Z6B
  116.    END IF
  117.  
  118. SELECT CASE X
  119. CASE 1, 3, 5, 7, 9
  120.     IF B = XX THEN NAME1SCR = NAME1SCR + 1 ELSE NAME1SCR = NAME1SCR
  121. CASE 2, 4, 6, 8, 10
  122.     IF B = XX THEN NAME2SCR = NAME2SCR + 1 ELSE NAME2SCR = NAME2SCR
  123. END SELECT
  124.  
  125. 1009 IF B = D1 + D2 THEN LOCATE 21, 3: PRINT "CONGRATULATIONS! YOU WIN!!!": PLAY "MB X" + VARPTR$(MUZIK$): GOTO 1010
  126.    LOCATE 21, 3: PRINT "SORRY! YOU LOST !"
  127.        
  128. 1010 LOCATE 21, 41: INPUT "DO YOU WANT TO DICE AGAIN ? (Y / N) ", Resp$
  129.    PRINT
  130.  
  131. LOOP UNTIL UCASE$(MID$(Resp$, 1, 1)) = "N"
  132.  
  133. END
  134.  
  135. SUB ALTMENU
  136. SCREEN 9
  137. COLOR 14, 12:  CLS : LOCATE 1, 1: PRINT "█";
  138. FOR I = 1 TO 78
  139. PRINT "▀";
  140. NEXT I
  141.  
  142. PRINT "█";
  143. FOR I = 2 TO 22
  144. LOCATE I, 1: PRINT "█"
  145. NEXT I
  146.  
  147. PRINT "█";
  148. FOR I = 1 TO 78
  149. PRINT "▄";
  150. NEXT I
  151. PRINT "█";
  152.  
  153. FOR I = 2 TO 22
  154. LOCATE I, 80: PRINT "█"
  155. NEXT I
  156.  
  157. LOCATE 6, 1
  158. COLOR 14: PRINT "█";
  159. FOR I = 1 TO 78
  160. COLOR 1: PRINT "▀";
  161. NEXT I
  162.  
  163. LOCATE 8, 1
  164. COLOR 14: PRINT "█";
  165. FOR I = 1 TO 78
  166. COLOR 1: PRINT "▄";
  167. NEXT I
  168.  
  169. LOCATE 20, 1
  170. COLOR 14: PRINT "█";
  171. FOR I = 1 TO 78
  172. COLOR 1: PRINT "▀";
  173. NEXT I
  174.  
  175. COLOR 14, 12: LOCATE 3, 1: PRINT "█";
  176. FOR I = 1 TO 78
  177. PRINT "▄";
  178. NEXT I
  179. PRINT "█";
  180.  
  181. LOCATE 22, 2: FOR I = 1 TO 78: PRINT "▄"; : NEXT I: COLOR 14, 12
  182. COLOR 4: LOCATE 2, 2: FOR I = 1 TO 78: PRINT "█"; : NEXT I: COLOR 14, 12
  183. LOCATE 2, 28: COLOR 2: PRINT "A DICE GAME BY NESIM RAZON":
  184.  
  185. END SUB
  186.  
  187. SUB SIL
  188. LOCATE 7, 2: PRINT SPC(78);
  189. FOR I = 9 TO 19
  190. LOCATE I, 2: PRINT SPC(78);
  191. NEXT I
  192. LOCATE 9, 1: PRINT "█": LOCATE 10, 1: PRINT "█"
  193. LOCATE 21, 2: PRINT SPC(78);
  194.  
  195. END SUB
  196.  
  197. SUB Z1
  198. COLOR 14: LOCATE 12, 33: PRINT "■"
  199. END SUB
  200.  
  201. SUB Z1B
  202. COLOR 14: LOCATE 12, 48: PRINT "■"
  203. END SUB
  204.  
  205. SUB Z2
  206. COLOR 14: LOCATE 12, 32: PRINT "■ ■"
  207. END SUB
  208.  
  209. SUB Z2B
  210. COLOR 14: LOCATE 12, 47: PRINT "■ ■"
  211. END SUB
  212.  
  213. SUB Z3
  214. COLOR 14: LOCATE 12, 32: PRINT "■■■"
  215. END SUB
  216.  
  217. SUB Z3B
  218. COLOR 14: LOCATE 12, 47: PRINT "■■■"
  219. END SUB
  220.  
  221. SUB Z4
  222. COLOR 14: LOCATE 11, 32: PRINT "■ ■"
  223. COLOR 14: LOCATE 12, 32: PRINT "■ ■"
  224. END SUB
  225.  
  226. SUB Z4B
  227. COLOR 14: LOCATE 11, 47: PRINT "■ ■"
  228. COLOR 14: LOCATE 12, 47: PRINT "■ ■"
  229. END SUB
  230.  
  231. SUB Z5
  232. COLOR 14: LOCATE 11, 32: PRINT "■ ■"
  233. COLOR 14: LOCATE 12, 32: PRINT " ■ "
  234. COLOR 14: LOCATE 13, 32: PRINT "■ ■"
  235. END SUB
  236.  
  237. SUB Z5B
  238. COLOR 14: LOCATE 11, 47: PRINT "■ ■"
  239. COLOR 14: LOCATE 12, 47: PRINT " ■ "
  240. COLOR 14: LOCATE 13, 47: PRINT "■ ■"
  241. END SUB
  242.  
  243. SUB Z6
  244. COLOR 14: LOCATE 11, 32: PRINT "■ ■"
  245. COLOR 14: LOCATE 12, 32: PRINT "■ ■"
  246. COLOR 14: LOCATE 13, 32: PRINT "■ ■"
  247. END SUB
  248.  
  249. SUB Z6B
  250. COLOR 14: LOCATE 11, 47: PRINT "■ ■"
  251. COLOR 14: LOCATE 12, 47: PRINT "■ ■"
  252. COLOR 14: LOCATE 13, 47: PRINT "■ ■"
  253. END SUB
  254.  
  255.